<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Jquery缓慢返回顶部</title>
    <script src="../jquery.js"></script>
    <style>
        body{
            height: 2000px;
        }

        .back{
            display: none;
            position: fixed;
            right: 30px;
            bottom: 100px;
            cursor: pointer;
            width: 50px;
            height: 50px;
            background-color: pink;
        }

        .container{
            width: 900px;
            height: 500px;
            background-color: #87CEEB;
            margin: 400px auto;
        }
    </style>
</head>
<body>
    <div class="back">返回顶部</div>
    <div class="container" ></div>
    <script>
        $(function(){
            //让页面显示在垂直滚动条向上卷去100的位置
            $(document).scrollTop(100);
        });
       

        // 被卷去的头部 scrollTop()  / 被卷去的左侧 scrollLeft()
        // 页面滚动事件
        var boxTop=$('.container').offset().top;
        // console.log(boxtop);
        $(window).scroll(function(){
            // 实测if($(this).scrollTop()>=boxTop)也可以
            if($(document).scrollTop()>=boxTop){
                $('.back').fadeIn()
            }else{
                $('.back').fadeOut()
            }
        });

        //返回顶部
        $('.back').click(function(){
            // 非动画方式返回顶部
            // $(document).scrollTop(0);

            $('body,html').stop().animate({
                scrollTop:0
            });

            //不能是文档$(document)做动画,jquery的animate不支持doucment、window来做动画需要只有元素才能做动画,所以这里用的是html和body元素做动画
            // $(document).stop().animate({
            //     scrollTop: 0
            // }); 
        });
    </script>
</body>
</html>